package com.tedu.api.thread;

/**Thread类下静态方法
 * yield方法 暂停【让】
 * 作用：暂停当前正在执行线程对象【让出当前线程拥有的CPU时间片资源】
 *      并执行其他线程，但是，yield方法存在让出CPU时间片没有效果
 * 案例：假设教室一个门，只能进一个同学，同时进两个同学
 *                   第一个同学，你先
 */
public class Thread_yield {
    public static void main(String[] args) {
        Door door=new Door();
        String str="你先";//设定做出让步
        //创建两位同学线程
        Thread student1=new Thread(()->{
            System.out.println("第一位同学");
            door.enter();
            //判断，说：你先---让出CPU时间片--几率
            if (str.equals("你先")){
                Thread.yield();//让出CPU时间片--几率
            }
        });
        Thread student2=new Thread(()->{
            System.out.println("第二位同学");
            door.enter();
        });
        student1.start();
        student2.start();
    }
}
class Door{
    public void enter(){
        System.out.println("进入教室上课");
    }
}